home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Support Library
/
RoseWare - Network Support Library.iso
/
print
/
890ps.arc
/
READ.ME
< prev
Wrap
Text File
|
1990-01-08
|
6KB
|
105 lines
The following files are provided:
netware.h - definitions for calls in netware.c
netware.c - several of NetWare calls
pserver.c - source code for print server version 1.0
pserver.prj - project file for print server version 1.0
pserver.exe - the executable print server version 1.0
lc890.c - source code for print server version 2.0
lc890.prj - project file for print server version 2.0
lc890.exe - the executable print server version 2.0
The NEC LC-890 is a great printer - it provides PostScript services, as well
as emulating the Diablo 630 and HP LaserJet+ printers. NetWare is a great
network operating system. But *these* programs are the only way I could get
NetWare to transparently drive the LC-890 in all of the available modes.
The problem is that the LC-890 apparently ignores characters while it is
switching modes. Since you can't tell NetWare's PrintDef to pause between
characters, you can't use print definitions to automatically switch modes.
The source code provided is for the TopSpeed C compiler, produced by Jensen &
Partners International. I don't have the NetWare System Calls for C (and the
System Calls for C probably don't (yet) support TSC), so I had to implement a
few functions myself. TSC is 100% ANSI compliant (with extensions), and I
used maximum warning levels to help me detect errors during development. If
you want to use the NetWare System Calls for C, you will probably need to make
changes to allow for different parameters.
There are two programs included in this package. The first, PServer, is my
first attempt at writing the print server. The main advantage to PServer is
that it is written using fairly standard library calls - porting it to any
particular C compiler shouldn't be any real trouble. The disadvantage of
PServer is that it's ugly and unresponsive. But hey, what do you want for a
first attempt?
Disatisfied with PServer, I wrote LC890. This newer version takes advantage
of the time-sliced scheduler available with the TopSpeed C compiler, as well
the TopSpeed windowing library. This makes LC890 a really nifty program. You
can even leave the monitor turned on (which is useful, since LC890 will
display the contents of the printer queues) - if there aren't any jobs in the
queues, LC890 will blank the screen to prevent screen burn-in. Unfortunately,
you probably won't be able to port LC890 to another compiler without a major
rewrite. But if you have TopSpeed C (plug, plug (yes, I *do* work for the
company that produces TopSpeed C)), then you're all set.
Of course, both programs are very small - less than 400 lines each, not
counting the NetWare interface code. With any programs this small, porting
doesn't really seem like a big issue.
To use either PServer.EXE or LC890.EXE, log in as SUPERVISOR and use PConsole
to do the following:
1) Create print server "LC890", with password "LC890".
2) Create queues "DIABLO630", "LASERJET", "POSTSCRIPT" and
"POSTSCRIPTINTERACTIVE". For each of these queues:
a) Queue Servers must contain "LC890".
b) Queue Operators should contain appropriate values.
c) Queue Users should contain appropriate values.
Put your LC-890 in PostScript Batch mode, hook it up as LPT1: to a (dedicated)
PC which is connected to the network, load IPX and NETx, and run either
program.
The program will log in as "LC890", attach itself to the four queues, and
start looking for something to do. If it finds something, it will ensure that
the printer is in the appropriate mode, and print the job(s) for that mode.
If you ever want the program to stop, just hit ESCape. If the server is
currently printing a job, it will stop immediately - it *won't* finish
printing the job. Whenever you hit ESCape, the printer will be left in
whatever mode the last job required. Before you start either program again,
the printer *must* be in PostScript Batch mode. When exiting, the programs
detache themselves from all of the queues, and log out.
Problems with these versions:
1) Don't print banners.
2) Don't expand tabs.
3) Don't pay any attention to the lines and columns settings in the client
data area.
4) When exiting, leaves printer in mode other than PostScript Batch.
5) LC890 also attempts to display (but not print) jobs in "LABELS" and
LABELS_2". This (hopefully) causes no harm - when the program detects
that the queues don't exist, it avoids doing anything. (We have printers
attached to these two queues for printing mailing labels - it's nice to
have LC890 display their queue contents as well.)
6) LC890 has basic hooks for driving async ports and printer ports other
than LPT1, but this is not yet implemented.
7) LC890 should be restructured to provide services for multiple multi-mode
printers. Someday.
8) LC890 is simplistic in its window placement and sizing - displaying more
than 6 queues will probably require windows to be dynmically moved and
resized.
This program is released into the public domain, with no warranties
whatsoever. Non-buyers beware! If you discover bugs, or make significant
enhancements, please let me know.
Don Dumitru
Jensen & Partners, International
1101 San Antonio Road, Suite 301
Mountain View, CA 94043
(415) 967-3200 [voice]
(415) 967-3288 [fax]
(415) 967-7241 [bbs]
'dondumitru' [Bix]
'73577,2524' [CompuServe]